package to;

import java.util.Date;

import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.Lob;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

@Entity
@Table(name = "tbl_evento")
public class Evento {

	@Id
	@GeneratedValue
	private Integer id;

	@Column
	private String nomeEvento;

	@Temporal(TemporalType.DATE)
	private Date dataInicial;

	@Temporal(TemporalType.DATE)
	private Date dataFinal;

	@Column
	private Integer cargaHoraria;

	@JoinColumn
	@ManyToOne(cascade = CascadeType.ALL)
	private LocalEvento localEvento;

	@JoinColumn
	@ManyToOne(cascade = CascadeType.ALL)
	private Curso curso;

	@JoinColumn
	@ManyToOne(cascade = CascadeType.ALL)
	private TipoEvento tipoEvento;

	@Lob
	@Column
	private byte[] fundoCertificado;

	public byte[] getFundoCertificado() {
		return fundoCertificado;
	}

	public void setFundoCertificado(byte[] fundoCertificado) {
		this.fundoCertificado = fundoCertificado;
	}

	public Curso getCurso() {
		return curso;
	}

	public void setCurso(Curso curso) {
		this.curso = curso;
	}

	public Integer getId() {
		return id;
	}

	public void setId(Integer id) {
		this.id = id;
	}

	public String getNomeEvento() {
		return nomeEvento;
	}

	public void setNomeEvento(String nomeEvento) {
		this.nomeEvento = nomeEvento;
	}

	public Date getDataInicial() {
		return dataInicial;
	}

	public void setDataInicial(Date dataInicial) {
		this.dataInicial = dataInicial;
	}

	public Date getDataFinal() {
		return dataFinal;
	}

	public void setDataFinal(Date dataFinal) {
		this.dataFinal = dataFinal;
	}

	public Integer getCargaHoraria() {
		return cargaHoraria;
	}

	public void setCargaHoraria(Integer cargaHoraria) {
		this.cargaHoraria = cargaHoraria;
	}

	public LocalEvento getLocalEvento() {
		return localEvento;
	}

	public void setLocalEvento(LocalEvento localEvento) {
		this.localEvento = localEvento;
	}

	public TipoEvento getTipoEvento() {
		return tipoEvento;
	}

	public void setTipoEvento(TipoEvento tipoEvento) {
		this.tipoEvento = tipoEvento;
	}

	
}
